<!--

    The contents of this file are subject to the license and copyright
    detailed in the LICENSE and NOTICE files at the root of the source
    tree and available online at

    http://www.dspace.org/license/

-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!--
  Author:   Richard Rodgers
  Version:  $Revision$
  Date:     $Date$
-->
</head>
<body bgcolor="white">
<p>
Provides an API and implementations of metadata crosswalks, which are directional mappings from one schema to another, performed in the context of Item ingestion or dissemination. Most crosswalks are driven by a mapping
in a file, which reside in <code>config/crosswalks</code>.</p>

<h2>Crosswalk Interfaces</h2>

The principle interfaces are for ingest and dissemination contexts, i.e.
the IngestionCrosswalk interface consists of the methods: 

<p>
<code>public void ingest(Context context, DSpaceObject dso, List metadata)</code><br/>
<code>public void ingest(Context context, DSpaceObject dso, Element root)</code></p>
         

<p>The DisseminationCrosswalk interface has methods:</p>

<p><code>public Namespace[] getNamespaces()</code><br/>
<code>public String getSchemaLocation()</code><br/>
<code>public boolean canDisseminate(DSpaceObject dso)</code><br/>
<code>public List disseminateList(DSpaceObject dso)</code><br/>
<code>public Element disseminateElement(DSpaceObject dso)</code><br/>

<h2>Crosswalk Implementations</h2>
<p>Crosswalks exist for many formats, includings DC, QDC, METs, MODs, Premis, and a general
implementation employing an XSLT stylesheet.<p>

</body>
</html>
